翻訳と辞書
Words near each other
・ Peach・Aviation 株式会社
・ Peaks (アルバム)
・ Peaky SALT (アルバム)
・ Pearl (Shiroの曲)
・ Pearl (今井美樹のアルバム)
・ Pearl (歌手)
・ Pearl Jam (アルバム)
・ Pekka Pyykkö
・ Pen (雑誌)
・ Penn (曖昧さ回避)
Pentium F00F バグ
・ Pentium FDIV バグ
・ Pepper (ロボット)
・ Perfect Love 〜Song selection vol.3
・ Perfect World (ROCKY CHACKの曲)
・ Perfect World (島みやえい子のアルバム)
・ Perfect World-完美世界-
・ Perfume (曖昧さ回避)
・ Perfume (林原めぐみのアルバム)
・ Perfume (鈴木雅之のアルバム)


Dictionary Lists
翻訳と辞書 辞書検索 [ 開発暫定版 ]
スポンサード リンク

Pentium F00F バグ : ミニ英和和英辞書
Pentium F00F バグ[れい]
=====================================
〔語彙分解〕的な部分一致の検索結果は以下の通りです。

F : [えふ]
 ファロー四徴(症)

Pentium F00F バグ : ウィキペディア日本語版
Pentium F00F バグ[れい]
f00f("foof"と発音する)は、IntelPentium、Pentium MMX、Pentiumオーバードライブプロセッサの、ある世代以前のモデルにある、公開されている設計上の不具合の通称である。問題〔OS側で特別の対策をしていないとプロセッサが止まる。〕を起こす機械語バイト列「f0 0f c7 c8」の先頭2バイトの16進表現に由来する。
Intelはこの問題を「ロックされたCMPXCHG8B インストラクションでの不正なオペランド」と呼んでいる。
== 内容 ==
問題を起こす機械語コード(f0 0f c7 c8)に対応するアセンブリ言語表現は以下のようになる。本来はメモリオペランドを指定して使用する前提の命令であり、アセンブラによってはエラーとされアセンブルを拒否されるかもしれない。
lock cmpxchg8b eax
''不具合を引き起こすにはオペランドはレジスタである必要がある。ここでは例示としてeaxをオペランドにしているが、その他のレジスタでもよい。''
''cmpxchg8b''命令は、オペランドとして指定されたアドレスのメモリ上の8byteの領域を取る。この命令を実行すると、''edx:eax''の値とメモリ上の8byte値を比較し、一致したらZフラグをセットするとともに''ecx:ebx''の値をこの8byte領域にストアし、一致しなければZフラグをクリアするとともに8byteのデータを''edx:eax''にロードする(コンペア・アンド・スワップ、詳細はリファレンスマニュアル等を参照)。ただし、この命令の機械語では、命令フォーマット上はオペランドにレジスタも指定することが許容される。そして、レジスタオペランドを指定したcmpxchg8b命令を、lockプレフィクス付で実行すると、この不具合が引き起こされる。
lockプレフィックス〔排他制御を指示するもので、同じメモリアドレスに対して2つのプロセッサが競合しないように使われる。〕なしでは、この命令は不正命令例外を引き起こすだけである。即ち、レジスタペア''edx:eax''に格納された8byte=64bitのデータと、指定されたレジスタ、上記の例では''eax''に格納された4byte=32bitのデータの比較は妥当ではないからである。
しかし、lockプリフィックスを付けた場合、以後のメモリアクセスが抑制されるために、プロセッサは不正命令例外ハンドラに移行することができず、この段階でハングアップし以後は一切の命令をせず、割り込みも受け付けなくなってしまう。復旧するにはシステムを再起動しなければならない。

抄文引用元・出典: フリー百科事典『 ウィキペディア(Wikipedia)
ウィキペディアで「Pentium F00F バグ」の詳細全文を読む




スポンサード リンク
翻訳と辞書 : 翻訳のためのインターネットリソース

Copyright(C) kotoba.ne.jp 1997-2016. All Rights Reserved.